package collection;

import java.util.ArrayList;
import java.util.Collection;

public class CollectionDemo {
    public static void main(String[] args) {
       Collection c  =new ArrayList();
       c.add(new Point(1,2));
       c.add(new Point(3,4));
       c.add(new Point(5,6));
       c.add(new Point(7,8));
       c.add(new Point(9,0));
       c.add(new Point(1,2));//[元素1.toString，Point.toString,]
        System.out.println(c);

        Point p =new Point(2,2);
        boolean contain =c.contains(p);
        //判断集合是否判断某元素的语法，对象打点.contains是返回值为boolean的有参方法
        System.out.println("是否包含："+contain);

        //boolean remove(Object o):------一般不接收boolean的结果
        //从当前集合删除与给定元素判断equal()相等元素从集合中删除
        //有多个相等只删第一个

        c.remove(p);//先判断相等后删除，不相等就不删除
        System.out.println(c);

        Collection cc =new ArrayList();
        Point pp = new Point(1,2);
        cc.add(pp);//将品牌添加到cc中
        System.out.println("pp:"+pp);
        System.out.println("cc:"+cc);

        pp.setX(100);//集合元素和数组一样存在堆中，对集合的赋值，其实在复制地址，集合元素改变牵一发动全身
        System.out.println("pp"+pp);
        System.out.println("cc"+cc);


       /* Collection c =new ArrayList();//有序可重复的接口
        c.add("one");
        c.add("two");
        c.add("three");
        c.add("four");
        c.add("five");
        //集合重写了Object的toString方法，返回格式如下：
        //[元素1.toString， 元素2.toString，元素3.toString...... ]
        System.out.println(c);

        System.out.println("集合的长度是"+c.size());
        //数组长度为:(Array类型)对象名.length
        // 字符串个长度为   (String类型)对象名.length()
        //集合长度为     (Collection类型)对象名.size()
        System.out.println("是否为空集："+c.isEmpty());//false

        c.clear();//清空集合
        System.out.println("集合已清空");
        System.out.println(c);
        System.out.println("长度为："+c.isEmpty());*/
    }
}
